Analyzing a credit counseling agency

ABSTRACT

A method of analyzing a credit counseling agency, the method including: automatically capturing, with a computer system, respective call data for each of a plurality of telephone calls with a credit counseling agency, each said call with a respective debtor associated by the computer system with a respective creditor; and processing, with the computer system, the automatically captured respective call data to produce a report which analyzes the credit counseling agency.

PRIORITY STATEMENT

This is a continuation of, claiming priority from, and incorporating byreference, U.S. patent application Ser. No. 09/692,697 filed Oct. 19,2000, titled “A SYSTEM FOR TRANSFERING AN INBOUND COMMUNICATION TO ONEOF A PLURALITY OF CREDIT-COUNSELING AGENCIES,” having the sameinventors.

A portion of the disclosure of this patent document contains materialthat is subject to copyright protection. The copyright owner has noobjection to a statutory fair use of this material, as it appears in thefiles of the files or records of the U.S. Patent and Trademark Office,but otherwise reserves all copyright rights whatsoever.

TECHNICAL FIELD OF THE INVENTION

The present invention pertains to an electrical digital computer machineand a data processing system, methods of making and for using themachine, products produced thereby, as well as data structures andarticles of manufacture pertaining thereto, and all necessaryintermediates of that which is discussed herein, all in the field ofcomputerized aspects of card crediting to mortgages and the like.

More particularly, this invention relates to a digital electrical dataprocessing system having particular utility in financial fields relatedhereto. Still more particularly, the present invention pertains to callreferral, as in the case of a calling debtor who is referred by thelender to a credit counseling agency, along with automated generation ofrelated documentation, inter-computer communications, and networking.

BACKGROUND OF THE INVENTION

Prior to the present invention, the technology of referring a debtor toa credit-counseling agency or other financial assistance provider couldnot be considered robust.

The generally excepted method for lenders (creditors) to refer consumers(debtors) to credit counseling agencies was to (a) tell them to theirlocal yellow pages or (b) tell them to call one of two toll-freetelephone numbers supported by the National Foundation for CreditCounseling (NFCC) or the Association of Independent Consumer CreditCounseling Agencies (AICCCA). The prior method of making referrals was aone-to-one approach that utilized only existing telephones. In somecases individual or multiple credit counseling agencies would establishrelationships with creditors who in turn would make referrals directlyto that or those agencies.

In some cases credit counseling agencies would produce manual orcomputer reports outlining which of the creditors customer(s) called theagency or agencies. In most cases these reports were compiled after apredefined period often 30 to 60 days later. Where a creditor hasmultiple relationships and receives multiple reports then the data fromeach report has to be merged into a single summary report by thecreditor requiring additional time and expense.

There is no known incidence of automated referral of a debtor to anintermediary or a second such referral from the intermediary to thefinancial assistance center, such as a credit agency. Thus, there was noknown capturing of a referrer or lender identity, or caller or debtoridentity, by say the intermediary for use in, say, tracking, reporting,or feedback to any of the parties involved. Nor would there be anyautomated referral criteria for selecting a financial assistance center(e.g., credit counseling agency, other lender, etc.), say, by computerlogic that applies referral criteria to the call. Lenders would havelittle idea how the credit counseling agencies fared, and the agencieswould nave no idea how they fared as compared with other agencies.

In sum, the industry has worked long and hard to collect on debts, andthere is a plethora of lenders, troubled debt, and financial assistancecenters, yet the known prior art has shortcomings that have left manyinadequately addressed needs.

A. OBJECTS AND ADVANTAGES

In view of the foregoing, an object of the invention for which a patentis sought is improve over or overcoming some or all of the drawbacksindicated herein.

It is an object of the present invention to provide a computer systemlinked to call referral activity from debtors to lenders, e.g., by wayof an intermediary, to financial assistance centers.

It is another object of the present invention to provide a computersystem to select which of a plurality of financial assistance centers issuitable, based on lender-specified criteria, for referral of particularcalls.

It is yet another object of the present invention to provide a computersystem to capture debtor, and preferably lender, identities and/or otherdata (e.g., by ANI, DINS, IVR, telephony,) for referral and feedback,reporting, management, and comparative purposes.

It is still another object of the present invention to provide acomputer system to communicate call referral reports, in real or nearreal time, to a secure global network site, such as an Internet website.

It is an additional object of the present invention to provide acomputer system to trigger call routing by defaults, time of day,location of caller, quantity (e.g., percent of calls placed to a center,prior communication between a particular caller and center, etc.

It is also an object of the present invention to provide a computersystem to generate call referral reports by time of day, day of week,state of debtor, as well as an analysis of uncompleted (e.g., hang ups)calls, comparison with other centers—especially those used by a commonlender.

These and other objects and advantages of this invention will becomeapparent from a consideration of the figures and ensuing description incontrast to the state of the art before the present invention.

B. SUMMARY OF THE INVENTION

These and the other objects of the present invention, as apparent fromthe specification as a whole, are carried out by providing a machine,manufacture, process, and improvement thereof in which user definedcriteria is electronically and digitally stored in a custom databasewhich processes and modifies electrical and digital signals representingdata so as to overcome the aforementioned disadvantages of priorreferral management policies or systems. More particularly, theinvention involves, a computerized system for the management, tracking,and reporting of referrals make from one company, individual, or entityto another company, individual, or entity. More particularly, thepresent invention relates to a process that utilizes telecommunicationstechnology, computer technology, database technology, web-basedreporting application technology to manage, track, and report resultsbased on the user defined criteria.

More particularly, this invention relates to an automated computersystem that allows referrers to define referral criteria, manage theirreferral process, track referrals and types, and number of referrals,and receive referral results in pre-defined or custom reports in realtime or near-real time. One particularly application for this inventionis in the credit counseling industry where issuers of unsecured debtsuch as credit cards might be interested in referring financiallystressed customers to credit counseling agencies for assistance inmeeting their financial obligations.

Even more particularly, the present invention relates to an improveddigital electrical computer-based system configured to address theforegoing objects, including a machine (programmed computer), methodsfor making and using it, products produced by the method, datastructures, and necessary intermediates, collectively referenced hereinafter as the method (for the sake of brevity).

Accordingly the invention can be exemplified as a computer-aided methodsuch as that for a referrer-controlled method for transferring aninbound communication to one of a plurality of financial assistanceproviders, the method including the steps of: receiving an inboundcommunication from a referring apparatus of information sufficient toidentify a referrer identity; selecting which one of a plurality offinancial assistance providers to refer the inbound communication byusing a computer to look up and to apply referral criteria responsive tothe referrer identity; and connecting the inbound communication to theone of the plurality of the financial assistance providers in accordancewith the criteria.

In any of the embodiments, the steps of receiving and selecting can becarried out with the referrer identity being a lender identity and withsaid inbound communication including a telephone connection to a debtorof a lender having the lender identity.

Another way of viewing the invention is that it is a method forreferring a telephone communication to one of a plurality of financialassistance providers based on lender criteria, the method including thesteps of: storing telephone numbers for a plurality of financialassistance providers in memory accessible by a digital electricalcomputer; obtaining lender criteria for selecting one of the financialassistance providers; storing said criteria for access by said computer;identifying a debtor; selecting one of the financial assistanceproviders by accessing the criteria, applying the criteria, andaccessing one of the stored telephone numbers; and connecting the debtorby telephone to the one of the stored telephone numbers.

In any of the embodiments, the invention can be carried out by furtherincluding the steps of: using ANI to detect a telephone number; andassociating the telephone number with debtor information.

In any of the embodiments, the invention can be carried out by furtherincluding the steps of: using DNIS to detect a telephone number; andassociating the telephone number with lender information.

In any of the embodiments, the invention can be carried out by furtherincluding the steps of: receiving debtor-identifying information bytelephony; and communicating the information from said telephony to thelender for tracking debtor payment performance.

In any of the embodiments, the step of connecting can be carried outwith the financial assistance center being a credit-counseling agency.

In any of the embodiments, the invention can be carried out by furtherincluding the step of: providing some of said financial assistancecenters with call activity reporting by means of a secure web site.

In any of the embodiments, the invention can be carried out by furtherincluding the step of: providing call activity reporting updated no lessthan daily at a secure web site.

In any of the embodiments, the invention can be carried out by furtherincluding the step of: providing a web site demonstration of saidmethod.

In any of the embodiments, the step of selecting can include: applyingas said criteria a call routing triggered by a quantity of prior callsrespectively placed to the financial assistance centers.

In any of the embodiments, the step of selecting can include: applyingas said criteria a call routing triggered by a detection of a debtor whohas previously been referred to one of the financial assistance centers.

In any of the embodiments, the step of selecting can include: applyingas said criteria a call routing triggered by time of day.

In any of the embodiments, the step of selecting can include: applyingas said criteria a call routing triggered by location of the debtor.

In any of the embodiments, the step of selecting can include: applyingas said criteria a call routing triggered by time of day, location ofthe debtor, and a quantity of prior calls respectively placed to thefinancial assistance centers.

In any of the embodiments, the step of selecting can include: applyingas said criteria a default call routing triggered by a failure to make afirst connection to one of the financial assistance centers.

In any of the embodiments, the invention can be carried out by furtherincluding the steps of: storing call referral information includingnumber of calls and call duration data for each said financialassistance center; and generating a report of said call referralinformation.

In any of the embodiments, the invention can be carried out by furtherincluding the steps of: storing call referral information includingcaller hang up data; and generating a report of said call referralinformation.

In any of the embodiments, the invention can be carried out by furtherincluding the steps of: storing call referral information includingattempted but uncompleted call connecting; and generating a report ofsaid call referral information.

In any of the embodiments, the invention can be carried out bygenerating a call referral report by time period for each said financialassistance center.

In any of the embodiments, the invention can be carried out by furtherincluding the step of: including in the report an analysis of callreferral activity by time of day.

In any of the embodiments, the invention can be carried out by includingin the report an analysis of call referral activity by day of week.

In any of the embodiments, the invention can be carried out by includingin the report an analysis of call referral activity by state of debtor.

In any of the embodiments, the invention can be carried out by includingin the report an analysis of uncompleted calls.

In any of the embodiments, the invention can be carried out bygenerating a call referral report including a comparison of saidfinancial assistance centers.

In any of the embodiments, the step of generating includes generatingthe call referral report including the comparison of said financialassistance centers by a respective one of the lenders.

In any of the embodiments, the invention can be carried out by using IVRto associate the telephone number with debtor information.

In any of the embodiments, the invention can be carried out as a report(product) produced by a method.

In any of the embodiments, the invention can be carried out as acomputer system programmed to implement a method for referring atelephone communication to one of a plurality of financial assistanceproviders based on lender criteria, the computer system including: adigital electrical computer having a processor, the processorelectrically connected to store and receive electrical signals at amemory device, to receive input electrical signals corresponding toinput information from an input device, to convert output electricalsignals into output information at an output device, the processorprogrammed to control the digital electrical computer to receive theinput electrical signals and to process the input electrical signals toproduce the output electrical signals in storing telephone numbers for aplurality of financial assistance providers in memory accessible by saiddigital electrical computer, storing lender-provided criteria forselecting one of the financial assistance providers, identifying adebtor in response to a telephone communication, and selecting one ofthe financial assistance providers by accessing the criteria, applyingthe criteria, and accessing one of the stored telephone numbers toconnect the debtor to the one of the stored telephone numbers;especially as further including a telephone controlled by said digitalelectrical computer to connect the debtor by telephone to the one of thestored telephone numbers.

In any of the embodiments, the invention can be carried out as methodfor making a computer system to refer a telephone communication to oneof a plurality of financial assistance providers based on lendercriteria, the method including the steps of: providing a digitalelectrical computer having a processor, the processor electricallyconnected to store and receive electrical signals at a memory device, toreceive input electrical signals corresponding to input information froman input device, to convert output electrical signals into outputinformation at an output device; and programming the processor tocontrol the digital electrical computer to receive the input electricalsignals and to process the input electrical signals to produce theoutput electrical signals in storing telephone numbers for a pluralityof financial assistance providers in memory accessible by said digitalelectrical computer, storing lender-provided criteria for selecting oneof the financial assistance providers, identifying a debtor in responseto a telephone communication, and selecting one of the financialassistance providers by accessing the criteria, applying the criteria,and accessing one of the stored telephone numbers to connect the debtorto the one of the stored telephone numbers.

In any of the embodiments, the invention can be carried out as acomputerized method for providing call referral activity reporting at anInternet address, the method including the steps of: generating callreferral data by receiving an inbound telephone communication from areferring apparatus of information sufficient to identify a referreridentity, selecting which one of a plurality of financial assistanceproviders to refer the inbound communication by using a computer to lookup and to apply referral criteria responsive to the referrer identity,and connecting the inbound communication to the one of the plurality ofthe financial assistance providers in accordance with the criteria; andposting call referral data to the Internet web address.

In any of the embodiments, the invention can be carried out as furtherincluding the steps of: engaging accounting software to trackcompensation for the connecting.

Briefly, in the system of the present invention, and in the case of anintermediary, a telephone phone rings—collect ANI (originating number)and DNIS (number called) information. The DNIS number identifies thelender to the intermediary. The ANI information becomes important tohelp determine if the lender is doing a warm transfer or the consumersare calling themselves. Based on this information, the intermediary willlater determine if this consumer called before and route them back tothe correct (previous) agency.

Answer the call—time stamp. This step to mark the beginning of the call.

Prompt the caller for digits—credit card information—for routing back tothe lender to identify the caller and track what became of the caller.

Authenticate the collected digits—i.e., credit card number.

Play a “Thank-You” message and place the caller on “hold.”

Determine if consumer has called before: Previous caller; New caller;Default.

Perform routing table lookup—Using the DNIS and ANI information querythe routing tables for an outbound number to agency.

Seize an outbound telephone channel (line).

Get the next outbound telephone number.

Dial the outbound number.

Was the call answered in 4 rings (valuable for report information); ifnot, check if there is another outbound number—shift from primary agencyto secondary agency.

Connect caller to agency.

Wait for hang-up or call time-out—Monitor both sides of the conversationfor a hang-up. If hang-up is detected, clean up resources.

Generate updated reports every two minutes, posted to a secure web site.

The Referral Management System (RMS) is not limited to just the creditcounseling world.

A Receiver (someone who receives a referral) can be any of thefollowing:

1. consumer credit counseling agency

2. home equity lender

3. debt consolidation or loan refinancer

4. bill paying service (automated or not)

5. commercial lender

6. financial planner

or more particularly, an apparatus of the same.

A Referrer (someone who directs a call for the referral) can be any ofthe following:

1. creditor

2. employee assistance program (EAP)

3. professional employer organization (PEO)

4. membership services organization

5. labor unions

6. affinity groups

7. clubs

8. credit unions

or more particularly, an apparatus of the same.

While the foregoing is a reasonable summary, it should be understoodthat the scope of the invention is defined by the claims subsequenthereto, and that variations on the preferred embodiment are intended tobe embraced therein, particularly call referral without an intermediary,as for example by the lender itself directly connecting callers tocredit counseling or other financial assistance agencies. Further detailis provided in the drawings and detailed discussion set out below.

C. BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of an embodiment of the present invention.

FIG. 2 is an illustration of an embodiment an IVR System diagram inaccordance with the present invention.

FIG. 3 is an illustration of an embodiment an IVR High Level diagram inaccordance with the present invention.

FIG. 4 is an illustration of an embodiment an IVR Database Schema inaccordance with the present invention.

FIG. 5 is an illustration of an embodiment a main screen in accordancewith the present invention.

FIG. 6 is an illustration of an embodiment a members screen inaccordance with the present invention.

FIG. 7 is an illustration of an embodiment a members summary screen inaccordance with the present invention.

FIG. 8 is an illustration of an embodiment a report for levels one, two,and three in accordance with the present invention.

FIG. 9 is an illustration of an embodiment a report for levels four andfive, and of a comparison to date, in accordance with the presentinvention.

FIG. 10 is an illustration of an embodiment a custom report screen inaccordance with the present invention.

FIG. 11 is an illustration of an embodiment a report with analysis inaccordance with the present invention.

FIG. 12 is an illustration of an embodiment a report map in accordancewith the present invention.

FIG. 13 is an illustration of an embodiment a network in accordance withthe present invention.

DETAILED DESCRIPTION OF A PREFERRED EMBODIMENT

Turning now to a detailed discussion of how to make and how to use thepresent invention, please refer to the code in the Appendix hereto,which is incorporated herein. Generally, with regard to making andoperating the Referral Management System (RMS) 1 of the presentinvention, the following terminology is being used.

-   -   1. RMS Referral Management System    -   2. RT Routing Table    -   3. OBN Outbound Number    -   4. ANI Automated Number Identification (Originating number)    -   5. DNIS Dialed Number Identification Service (Toll-free called        number)    -   6. IVR Interactive Voice Response    -   7. CCA Consumer Credit Agency    -   8. PSTN Public Switch Telephone Network    -   9. DTMF Dual Tone Multi-Frequency (Touch Tones)    -   10. Outbound Number—A Toll-Free number belonging to a particular        CCA.    -   11. Default Outbound Number(s)—A Toll-Free number of a CCA to        call in the event a database lookup fails.    -   12. Customer—Bank's customer; this individual is provided a        PEREGRIN Toll-Free number, by the bank.

For a particular embodiment, consideration should be given to T1interfaces, commercial software, custom software, and hardware productsand other features; major factors include scalability, reliability,compatibility, functionality, available support, and short and long termcost. T1 trunking options from the Tier-1 Long Distance ExchangeCarriers (LEC's) can be obtained by contracts with the LEC's. Equipmentlocation can be such as SkyNetWeb, a co-location facility in Baltimore,Md. which provides the following:

-   -   1. Locked Cabinet (7′×30″×19″)    -   2. Backup Power Generators    -   3. 24/7 Access to the equipment    -   4. Internet Access    -   5. Public Network Access

A suitable IVR platform can be obtained from LCG, and database products,such as those from Oracle, Sybase, and Microsoft, can be considered fora particular application. Sybase can be chosen.

Hardware used for the RMS can include T1 interface boards (Dialogic, andBrookTrout), RAID options, memory, processing speed requirements, andBackup & Recovery options. Dialogic can be used, and RAID V can bechosen for the disk array to provide redundancy; XEON processors can beused for potential expansion of the System 1 with 512K of RAM.

A toll-free provider can be considered for the best cost effective planfor the particular embodiment, considering per minute cost, minimummonthly requirements, and length of contract. Spring Valley (asubsidiary of WorldCom) can be used.

Hardware can be comprised of the following RMS:

Category Description Qty. Motherboard Intel C440GX Dual-Xeon 1 CPU IntelPentium III Xeon 550 MHz w/1 MB cache 2 Memory 256 MB Synchronous DRAM 2Boot Drive Seagate Medalist 6.4 GB Ultra ATA/66 2 Hard Drives 9.1 GB IBMUltra2-SCSI SCA LVD 80 pin SCA 4 10,000 rpm RAID PCI - Adaptec:AAA-131U2, 1 ch., Ultra2-SCSI, 1 Controller 64 MB Cache CDROM IDE 48XCDROM 1 OS Windows NT Server 4.0, with 5 client licenses 1 Case IntelCabrillo-C Full Tower with 3 redundant 1 400 W Power Supplies PedestalKit Pedestal Kit for Cabrillo-C chassis 1 Floppy Drive IDE 1.44 MB 3.5″1 Keyboard Windows PS2 104 Key 1 Mouse Microsoft PS2 Intellimouse 1Monitor Viewsonic Optiquest Q51 15″ .28 dp 1 Modem US Robotics External(56 k w/voice) & Blaster 2 External (56K w/voice) NIC ISA - 3COM 10/100MB Ethernet Card 1 Backup Seagate Scorpion 12/24 SCSI2 Tape Backup 1Backup Seagate Backup Exec for Windows NT Version 1 Software 7.3Multi-Server Warranty 3 yr Onsite, pageable, 7/24, 4 hour response 1Maintenance UPS APC Smart UPS 700Net (w/powerchute software 1 and cable)Remote Intel PCI Card/Modem (Emergency Management 1 Management Card)with Software CSU External T1 CSU's (one spare) 3 Database SybaseAdaptive Server Anywhere (20 concurrent 1 Management license) IVRPlatform VBVoice - 96 channel Professional Edition 1 T1 Boards DialogicSC/240 Single T1 Boards 3

The trunk interface boards are Dialogic SC/240 T1 Interface boards. TheIVR software was built using the Professional Version of Pronexus'sVBVoice Toolkit. This software interfaces with the Dialogic T1 interfaceboards to answer the call, collect the ANI and DNIS information, promptthe Customer, initiate the Outbound Number database lookup, dial theOutbound Number and bridge the call between the Inbound Caller and theOutbound destination.

VBVoice is purchased based on number of channels that it will support.This support can always be upgraded but currently can support a maximumof ten T1's, e.g., the following version of VBVoice: VB VoiceProfessional 4.1—96 Channels (supports 4 T1's). This software support offour T1 circuits will allow for expansion of two more T1's withoutupgrading the VBVoice software

The IVR Server has the following available 4 PCI slots for T1's. In thepresent implementation, there are three single T1 PCI boards. Two wereimmediately configured in the system and one is a spare. The initialcapacity will be as follows: T1 Trunks—Two (Two PCI boards—One T1 perboard): This allows for 24 simultaneous completed calls to the CCA'sthrough the system. Initial call volume capacity is 20K calls/month(non-blocking).

Assumed the following average call criteria:

-   -   1. 24 Business Days per Month    -   2. 12 Business Hours per Day    -   3. 7 Minutes per Call

With the above call criteria, the IVR system will average approximately1 call per minute with a 20K calls/month load on the system.

The Referral Management System 1 (RMS) performs criteria-based callrouting. A caller dials a nationwide toll-free number that enters intothe RMS via PSTN T1 audio trunks. Data including originating number(ANI), and called number (DNIS) are sent in over the PSTN and arecollected by the RMS system. From this data, the day of week, time ofday, and geographic region are determined and are utilized in a routingtable (RT) lookup. The caller is presented with a recorded greeting anda request to enter a credit card number (if this prompt is enabled),which is then captured by the RMS. If no number is entered or the numberis determined to be an invalid credit card number, the caller isprompted again. With or without data from the first and second try, arecorded message is played and the transaction proceeds. A routingdatabase lookup locates one main outbound number (OBN) and one or twodefault outbound numbers to dial depending on the routing model assignedto the toll-free called number (DNIS). The provided routing models are:

-   -   1. Default—One or two numbers assigned to a call if a DB lookup        fails or primary call fails.    -   2. Statistical—Routing based on percentage of calls going to two        or more agencies.    -   3. Time & Location—Routing based on where the call originated        from (ANI).    -   4. Hybrid—Combination of the Statistical and Time & Location        Models.

The RMS places the customer “on-hold” and dials the OBN, and thenconnects the Customer or caller once an answer is detected. If a busysignal or no answer (defined by a configurable number of rings) isencountered, the call is re-routed to a default OBN based on RTspecifications.

The RMS will continue to monitor the call until a hang-up condition isdetected. It will then database the total length of the call. The RMSstores the detailed data on each call into a database record which issent to the PEREGRIN Web Server via a push process. This push processlogs its activity and occurs at a configurable rate (e.g., every twominutes).

The following RMS requirements utilized in the development of the System1.

A. IVR Application Requirements

-   -   1. Shall answer phone call and start timer.    -   2. Shall collect and/or database:    -   3. ANI Collected (Y or N)    -   4. Originating Number (ANI)    -   5. State call originated from (2 Digit)    -   6. Start Date of Call (DD/MM/YY)    -   7. Start Time of Call (HH:MM:SS)    -   8. End Time of Call (HH:MM:SS)    -   9. Length of Call (HH:MM:SS)    -   10. Called Number (DNIS)    -   11. Customer (i.e., caller) Entered Digits (16 max.)    -   12. Criteria Cell Matched    -   13. Number Call was attempted to . . .    -   14. Number Call was completed to . . .    -   15. Completion code (TRUE, FALSE)    -   16. Non-complete reason (busy, no answer, line failure)    -   17. Shall prompt Customer, if enabled, for a 13-16 digit number        terminated by a pound sign and shall log an event for digit time        outs. Shall be able to disable Customer prompting for digits for        a given DNIS    -   18. Shall view an invalid digit as a digit timeout.    -   19. Shall database number entered by Customer.    -   20. Shall wait eight (8) seconds for Customer to enter the first        digit before prompting the Customer for a number a second time.    -   21. Shall wait eight (8) seconds in between digits, before        prompting the Customer for a number a second time.    -   22. Shall authenticate the number entered by the Customer and        shall log an event should authentication fail.    -   23. Shall authenticate the number entered by the Customer when        the maximum number of digits is entered regardless of whether or        not a pound sign was entered.    -   24. Shall play a “Thank-you” message and proceed with the        transfer if the second prompt fails in anyway.    -   25. Shall play a “Thank-you” message anytime the Customer        properly enters the number.    -   26. Shall be prompted a maximum of two times before proceeding        with the transfer.    -   27. Shall determine if Customer has called before only after a        successful authentication.    -   28. Shall transfer Customer to the same Outbound Number used on        their first call and shall NOT try another Outbound Number        should this one fail.    -   29. Shall seize an outbound channel and send DTMF digits down        the channel.    -   30. Shall interface to a Sybase database.    -   31. Shall query the Sybase database for a list of Outbound        Numbers to Dial.    -   32. Shall record the total length of the call.    -   33. Shall log significant events.    -   34. Shall put Customer in HOLD state.    -   35. Shall play message or music while Customer is in HOLD state.    -   36. Shall play “THANK YOU” message after authentication succeeds        or fails twice.    -   37. Shall ring the Outbound Number 4 times, if no answer, shall        dial the next Outbound Number.    -   38. Shall dial the next Outbound Number if fast busy is        detected.    -   39. Shall remove the Customer from the HOLD state and connect        them to the “answered” Outbound Number.    -   40. Shall play an “apology” message if we fail to seize an        outbound channel and shall log this event.    -   41. Shall detect if either side of conversation hangs up and do        the following:    -   42. Clean up resources appropriately    -   43. Record the time    -   44. Shall log an event if a conversation exceeds a maximum time.    -   45. Shall log an event, play an “apology” message, and clean up        resources if all Outbound Number dial attempts Fail.    -   46. Shall use a default Outbound Number if all Outbound Number        database lookups fail.    -   47. Shall record time when Customer is connected to an        “answered” Outbound Number.    -   48. Shall attempt to connect first time Customers to a maximum        of three (3) different Outbound Numbers, 1 from the Routing        Tables and 2 Defaults.    -   49. Shall attempt to connect Customers to the 2 Default Outbound        Numbers in the event the Routing Table lookup fails.    -   50. Shall read a configuration file for basic system parameters:    -   51. Number of Rings to wait for an Outbound Number to answer    -   52. Maximum length of a call    -   53. Amount of Time to wait between digits    -   54. Maximum Number of Digits in prompted number    -   55. Minimum Number of Digits in prompted number    -   56. Database “push” interval    -   57. Shall be dynamically re-configurable    -   58. Shall play a custom greeting based on DNIS when the call is        first answered.    -   59. Shall be able to modify or add custom greetings for the        first prompt without re-compiling the system code.

B. Database Requirements

-   -   1. Shall be encrypted and written to a file every 24 hours.    -   2. Shall push the IVR table data out the network connection at a        configurable interval.    -   3. Shall specify a Routing Model for all Inbound Numbers    -   4. Shall have three basic Routing Models and one Default. The        three basic Routing Models are:    -   5. Statistical    -   6. Time Location    -   7. Hybrid    -   8. Routing Models shall key off the DNIS information    -   9. Shall provide three types of Lookups:    -   10. Previous Caller: For valid CCN's, shall determine if        Customer has called before. If customer has called before and        was connected to a CCA, then the previously dialed Outbound        Number will be returned. If the Customer called before but was        never connected to an Outbound Number then the Customer will be        treated like a new caller and a New Caller Lookup will be        performed.    -   11. New Caller: If the Customer has not called before or an        invalid CCN was entered or the Customer has called before but        was not connected then the Routing Model specified for the DNIS        will be used to lookup one Outbound Number. Regardless of the        specified Routing Model a Default Routing Model will always        return two Outbound Numbers. When a Routing Model is not        specified for a particular DNIS the Default Routing Model will        be used.    -   12. Default: For each DNIS two CCA numbers will be specified,        one primary and one secondary. This lookup will always return        two outbound numbers.    -   13. Shall handle the following Routing scenarios:

Call Scenario Lookup Description 1 DNIS not Collected Go toRouting-Decision table, key off “not received” and use the specifiedRouting Model. 2 Invalid DNIS Collected (DNIS Go to Routing-Decisiontable, key off “invalid” and use collected is not defined in our thespecified Routing Model. table) 3 DNIS Collected, ANI not Go toRouting-Decision table, key off the received Collected “DNIS” and usethe specified Routing Model to get the first Outbound Number to dial.(This creates a unique routing issue if the TimeLocation Model wasspecified. There should be logic inside the TimeLocation Model to handlethis scenario.) The IVR will use the Default Routing Model to lookup twomore Outbound Numbers. A maximum of three Outbound Numbers will be triedfor this Customer. 4 Both DNIS and ANI are Go to Routing-Decision table,key off the received Collected “DNIS” and use specified Routing Modeland use it to lookup one specific Outbound Number. Attempt to dial thisCCA. The IVR will use the Default Model to lookup two default OutboundNumbers. A maximum of three Outbound Numbers will be tried for thisCustomer. 5 Bank requests: Statistical Model: For each Inbound Numberthe bank XX % of the time call CCA #1 will specify a certain number ofOutbound Numbers XX % of the time call CCA #2 (CCA's) with correspondingpercentages. The total . percentages must add up to 100%. If only one .Outbound Number is specified then the percentage must . be 100%. Themodel will be used to determine the first XX % of the time call CCA #nnumber to attempt. Primary Default DefaultModel: The bank will alsospecify two default Secondary Default number if the first attempt fails.6 Bank requests: Time Location Model: For each Inbound Number the State1and TimePeriod1 to bank will specify calls from a certain state and at aCCA #1 certain time period to be routed to a particular CCA. The . TimePeriods will be mutually exclusive. The number of State1 and TimePeriod4to Time Periods will be limited to four for each state. The CCA #2 modelwill be used to determine the first number to . attempt. StateN andTimePeriod1 to DefaultModel: The bank will also specify two default CCA#P number if the first attempt fails. . StateN and TimePeriod4 to CCA #QPrimary Default Secondary Default 7 Bank requests: Hybrid Model: Thismodel combines the Statistical and State1 and TimePeriod1 toTimeLocation Models into one Model so when a CCA #1 Customer calls froma particular location during a State2 and TimePeriod2 particular timerange we can statistically route calls to - 50% to CCA#2 the appropriateCCA. In addition we can route differently - 50% to 10 other CCA's basedon the day of the week. In particular we can discern between day of theweek, weekends, and holidays. Default Model: The bank will also specifytwo default number if the first attempt fails.

Overall system design and technical management for the RMS systemincludes the IVR System, Database Schema development, custom IVRapplication development, error recovery utilizing paging technologies,installation and testing, and future expansion and support plans.

FIG. 1 is an illustration of an embodiment of the present invention.FIG. 1 shows a customer 2 or caller connected by a channel to PTSN 4,which is centrally connected to a CCA 6, a Remote Monitoring Station 8allows the referring bank to listen in on calls which are beingtransferred or sent to agencies, which may require a monitoringstatement to be made when the call is be transferred advising theconsumer that the call may be monitored, and Tier 1 Provider 10 ofchannels (in-bound and outbound audio lines), which connect via DualProcessor Server 12. Dual Processor Server 12 includes Trunk InterfaceBoards 14, which link to PSTN 4 via a Remote Maintenance System 16 ismonitoring software which detects the condition or falure of key aspectsof the IVR, such as temperature of the unit, hard drives working, etc.,and sends a page to personnel if warning conditions occur. It alsoallows remote rebooting of the system, IVR 18 Database Management System20, with Custom Software 20 is all of the steps detailed beginning withstep 1., Collect ANI and DNIS at 30. This softweare analyzes the call,gathers information, presents it for routing and sends the call to thedesignated agency. Dual Processor Server 12 communicates with Disk Array24, makes a tape back up 26, and interfaces with a courier system suchas UPS System 28.

As to error recovery, the following paging requirements are for the RMSSystem 1 to recover from system faults and generate pages:

-   -   1. Inbound T1 Fault    -   2. Outbound T1 Fault    -   3. Database Fault    -   4. WebServer Not Accessible    -   5. Switched to Backup Power        There should be a continuous monitoring capability to detect        problems with the RMS server such as temperature thresholds        exceeded, memory errors, disk errors, and Operating System        malfunctions.

With regard to the IVR subsystem, access to the Internet can be providedvia a port on SkyNetWeb's switched Ethernet LAN. The access can bethrough MCI/Worldcom's UUNET. Thirty-two (32) IP addresses can beprovided and 50 GB of data transfer per month can be supported

For public network access, 24 in-bound audio channels (telephone linesor the like) can be provided by a Spring Valley/MCI WorldCom DedicatedT1 Trunk. There also can be 24 out-bound audio channels, which can beprovided by a MCI WorldCom Local T1. Additional in-bound and out-boundaudio channels can be provided by a Spring Valley/MCI WorldCom DedicatedT1 Trunk.

FIG. 2 is an illustration of an embodiment an IVR System diagram inaccordance with the present invention. The IVR application for the RMS 1and the IVR Sub-System custom software 20 has the following description.

-   -   1. Collect ANI and DNIS at 30;    -   2. Answer Call at 32: Time stamp this step to mark the beginning        of the call.    -   3. Prompt Customer for Digits at 34: After answering the Call,        prompt Customer for digits using Prompt 1. After the first digit        timeout prompt Customer for digits using Prompt 2 and after the        first authentication failure prompt the Customer for digits        using Prompt 3.    -   4. Wait for Customer to enter a DTMF digit at 36: The first time        the Customer fails to enter a digit, log an event, and re-prompt        the Customer for digits using Prompt 2. The second time the        Customer fails to enter a digit, log and event, and prompt the        Customer using Prompt 4. The Customer has maximum amount of time        to enter a digit and this will be specified by the digit timeout        parameter. This parameter will be dynamically re-configurable.    -   5. Collect a DTMF digit at 38.    -   6. Validate the Collected digits at 40: Proceed to step 7 and        authenticate the collected digits if any of the following cases        are TRUE:        -   If the digit is a pound (#) at 40        -   If the digit is a star (*) at 40        -   If the 17^(th) digit is NOT a pound (#) at 40        -   If NONE of the above cases are TRUE then proceed to step 36            and wait for another digit.    -   7. Authenticate collected digits at 42: Do the following checks        in the following order:        -   Invalid digits (star *)        -   Minimum number of digits required        -   Maximum number of digits allowed        -   Subject the collected string of digits (minus the pound (#)            sign) to provided authentication algorithm.        -   The first time any of the above checks FAIL, log an event            and re-prompt the Customer for digits using Prompt 3. The            second time any of the above checks FAIL, log an event and            prompt the Customer using Prompt 6.    -   8. Play a “Thank-you Message at 44: Depending on how a Customer        gets to this step one of three different prompts will be played.    -   9. Play a “Thank-you Message at 46: Depending on how a Customer        gets to this step one of three different prompts will be played.    -   10. Determine if Customer called before at 48: Only when        authentication is successful, perform a database lookup into the        Customer Tables to determine if the current Customer has called        in the past. When doing this search in the database we should        only have to search calls which have authenticated properly.        This should speed up this query. This step is performed in an        effort to reconnect past Customers to the same Outbound Number        every time, provided they always enter their account number        properly.    -   11. Perform Routing Table Lookup at 50: Using the DNIS and ANI        information query the routing tables for an Outbound Number.    -   12. Put Customer on HOLD at 52: Customer must be put on HOLD        while the IVR system dials the Outbound Number. Time stamp this        step so we can monitor how long we keep a Customer on HOLD.    -   13. Play Music or a Message at 54: While the Customer is on HOLD        play music or use Prompt 9.    -   14. Seize an Outbound Channel at 56: If this succeeds proceed to        step 14, if it fails, log an event and play the Customer message        using Prompt 8.    -   15. Get the Next Outbound Number at 58: Get the next Outbound        number to dial. If the Customer has called before then there        will only be one number on this list. If this is a first time        caller and the routing table lookup was successful then there        will be 3 numbers on this list (1 from routing tables and 2        defaults). If this is a first time caller and the routing table        lookup failed, then there will only be 2 numbers on this list        (the 2 defaults).    -   16. Dial the Outbound Number at 60: Send DTMF tones down the        outbound trunk corresponding to the Outbound number. (Dial the        CCA)    -   17. Was Call Answered within 4 Rings at 62: If it was then        proceed to step 19    -   18. Are there any more Outbound Numbers at 64: If the Called        party fails to answer within the first 4 rings, for any reason,        then we end up here. If there are more Outbound numbers to dial        goto step 14, if not, log an event and Play an apology message        specified by Prompt 7.    -   19. Play “Apology” Message at 66: Depending on how a Customer        gets to this step one of two different prompts will be played    -   20. Connect Customer to CCA at 68: Time stamp this step and        calculate the amount of time it took the IVR system to connect        the Customer to an appropriate destination.    -   21. Wait for Hang-up or Call Time-Out at 70: Monitor both sides        of the conversation for a hang-up. If hang-up is detected, clean        up resources (trunks, etc.) and time stamp this step so the        total length of call can be calculated. If hang-up is NOT        detected before the call duration reaches the maximum allowed,        log an event, time stamp and clean up resources (hang-up).

Turning now to the IVR Sub-System Database 20 (FIG. 1), the Sybaseproduct, Adaptive Server Anywhere can provide database Management forthe RMS. A Push application was developed to transfer database contentrequired by the Web Sub-System over the network connecting the twosub-systems. The timing of this push is controlled by a setting in aconfiguration (setting indicates the number of minutes between pushes).For example, if set to “2” will push the data every two minutes. To makethe push more efficient, only the new records since the last push aresent to the Web Server.

The IVR Sub-System of Data Management System 20 interfaces with the WebSub-System shown in FIG. 3. Components include IVR Database 72, Webdatabase 74, which communicates to a global network such as the InternetWorld Wide Web 76. Benefits Include:

-   -   1. Protects integrity of IVR Database    -   2. Redundancy    -   3. Optimized Web Database for Web Reporting    -   4. Removes reliance of Web Server on IVR Database (split        sisters)

Database Schema is shown in FIG. 4 which is the routing model and datafor each referrers' inbound lines. With regard to the Website (e.g., foraccess to reports), it is advisable to utilize a browser, such asInternet Explorer 4.0 or higher, or Netscape Navigator 4.0 or higher,etc., preferably with 128-bit encryption (SSL).

Internet Explorer

-   -   1. Select Help on the menu bar    -   2. Choose About Internet Explorer from the drop down menu    -   3. The number in the “Cipher Strength” field is the encryption        strength        Netscape    -   1. Select Help on the menu bar    -   2. Choose About Navigator or About Communicator from the drop        down menu    -   3. Scroll down and look to the left for the statement that        begins, “This version supports U.S. Security with RSA Public Key        Cryptography” That indicates a 128-bit encryption level.

Preferably the invention is carried out with a secure web site, forexample, using Secured Sockets Layer (SSL) for secure transmissions. SSLapplies encryption between two communicating applications, such as theReferrer Computer and the System Internet server. When the ReferrerComputer transmits data over the Internet, the data is encrypted or“scrambled” at the sending end and then decrypted or “unscrambled” atthe receiving end. Encryption is a technology that allows securetransmittal of information along the Internet by encoding thetransmitted data using a mathematical formula that scrambles it. Withouta corresponding “decoder,” the transmission would look like nonsensetext and would be unusable. It can be used with many applications,including electronic commerce (sending credit card numbers for orders ortransmitting account information), e-mail messages and sensitivedocuments. The System uses digital signatures and 128-bit encryption toidentify users and to ensure that information exchanged online is safefrom interception and alteration.

Additionally, the Web Site requires a unique User ID and Password.Thereafter, each time a Referrer Computer is used in a sign-on, theuser's identity is confirmed by a series of authenticating steps. Afterauthentication, a “cookie” is planted in the Referrer Computer system toidentify the referrer Computer

Preferably the invention is carried out so that the browser must accept“cookies”. A browser may be set to receive cookies automatically or tonotify of cookies. Either way is acceptable. If the browser is set tonotify, a user may receive a notice that the server wishes to set acookie when the user accesses secure areas of the Web Site.

Put simply, a “cookie” is a small piece of information about acomputer's identity. There are two kinds of cookies—“persistent” and“transient.” A persistent cookie, once installed, remains on the harddrive of a computer. Preferably a transient cookie is used, which is notpermanently stored on the Receiver Computer hard drive and is notavailable to anyone other than the System. The cookie containsinformation that allows the System to maintain continuity from one pageto another as the referrer Computer navigates the site and reports. Allinformation is securely encrypted through the use of SSL as describedabove.

Accessing the Web Site is carried out in the usual manner of enteringthe correct Internet address the Referrer Computer's browser address barand hitting “enter.” At this point, the System Website securityvalidates the IP address and approach. Once a main screen appears, thereferrer Computer can be used to “bookmark” the page for future easyreference.

From the main screen in FIG. 5, a user of the Referrer Computer canchoose:

Members 100—a secure part of the Website, requiring a login idpreviously obtained from the System by using a CONTACT US button toobtain a login id. The user can access all reports by this means.

Links and News 102—links for both financial and industry purposes, andnews that is pertinent to the industry. Use the CONTACT US button at thebottom of the page to suggest a link.

What we do 104—all about the System for receivers and referrers. Newvisitors can enroll to become a receiver or referrer or view a tutorialby clicking on the links here.

About us 106—all about the System and its related team-as the enterprisegrows.

As the user moves a mouse pointer over any of these items, a descriptionof the function appears to its right in the green area, replacing theverbiage there. At any time, anywhere in the site, the user can use abrowser's “Back” button to return to a previous page. Or, click on the“nav” bar name to go right to that report or section. To go to the mainpage, FIG. 5, simply click on a HOME in the bottom left of any screen,or click on the System logo (in this case, Peregrin) in the upper right.

Turning now to using the embodiment of the present invention inconnection with reporting, subsequent to the above-mentioned login, auser can move a mouse pointer over a MEMBERS button and click once. theuser is then taken to a member login screen, FIG. 6. The user enters aUser Name and password here. If the user has not enrolled, or forgottena password, the user can click on the highlighted text below the loginscreen to send an email to the System automatically for assistance.

Once the user has entered a User Name and password, clicked on a SUBMITbutton, and a summary for the login level appears. the user's loginlevel will show referrals for a particular area of responsibility asdefined by the user's administrator. the user's senior management maysee all referrals by all departments within their areas ofresponsibility, while other department areas may see referrals from justtheir areas of responsibility. Some users who access reports frequentlyfind it helpful to bookmark this page instead of the main page.

A login can be set to stay active for a fixed period of time, say, 30minutes of inactivity, so if the user leaves the Referrer Computer formore than 30 minutes, the user will be automatically logged off theSystem. As long as the User is active within the time period, the userwill not be automatically logged off, unless, of course, the user closesthe browser.

A Member Summary Screen, FIG. 7, is provided upon a successful login.This screen identifies the user and the location associated with theuser. The user will be able to view reports for all referrals from thislocation. To come back to this summary at any time, simply click on aMEMBER SUMMARY button.

As to the Referrer reports, there are several buttons (options), suchthose illustrated on the left-hand navigation bar (navigation bar) ofFIG. 7, DAILY REPORTS, 7 DAY REPORTS, 30 DAY REPORTS, AND YEAR REPORTS,which function identically for different time periods. MONTHLY or otherperiods could similarly be used.

DAILY REPORTS reflect the current day beginning at 12:00:01 AM of theday the user inquires. 7 DAY REPORTS reflect the last 7 days ending at12:59:59 PM the day before the user inquires. 30 DAY REPORTS reflect thelast 30 days ending at 12:59:59 PM the day before the user inquires.YEAR REPORTS show the last 365 days ending at 12:59:59 PM the day beforethe user inquires. For specific date ranges, such as a calendar week,month, or year, use CUSTOM REPORTS.

Many of the higher-level reports include two powerful and useful buttonsin the left most columns of FIG. 8 (in connection with FIG. 9). Clickthe DRILL DOWN button to get more information on any line that has abold heading. For instance, from the monthly summary page Drill Downwill take the user to a listing of each day's activity by receiver.Click on any bold entry from there to see a listing of unique callers onany one day. And Click on any bold entry from there to see callers withduplicate identification information. The user can learn more aboutdrilldown reports below.

Click the COMPARE button to go to a sub-report listing comparativeinformation on all referrers that the receiver uses. Examples:

When viewing a summary report, notice that call completion rates andtalk time have decreased at one of the receivers. When the user clickson the COMPARE button for that receiver, the user sees that the receivernow has two new referrers making referrals. This new referral volumecould be affecting the service level the receiver has been providing touser, which may warrant investigation.

When the user clicks the COMPARE button for one receiver, the user maysee that the Referrer makes up a majority of the referrals that thisreceiver is getting. Perhaps other referrers have not discovered thevalue this receiver can offer; perhaps other referrers have been in asimilar referral relationship with this referrer before and havediscovered it to be to their disadvantage to be dependent on one agency.

Whatever the reason, this information may warrant further investigation.Preferably referrer identities are not generally displayed, and volumesare shown as percentages of the total referrals to that receiver tomaintain confidentiality of referrers.

As a more particular example, consider YEARLY REPORTS.

The YEARLY REPORTS provide a snapshot of the user's ReferringInstitution, including referral data to all receivers in the last 365days. The receiver name in level one can be clicked to visit thereceiver's website, if there is one.

As always, click the browser's BACK button to return to the previousreport, or click on a report name to go there directly.

Click on the DRILL DOWN button to proceed to level two, the next levelof detail. Here the user will see summary information for each of theprevious 12 months for the receiver identified by clicking on acorresponding button. The date column in Level 2 is bold for every monthin which there have been more than one referral made to this receiver.

Then, click on a bold month to go to Level 3 for a summary of referralsfor the month to that receiver. There is one row for each day that therewere referrals. Clicking on a bold date (Bold indicates that there wasmore than one referral made to that receiver that day) takes the user tolevel 4 where all referrals for that date are listed by Time of Call.

If any of the credit card numbers are bold in level 4 there are multiplerecords for that credit card number (even if the credit card number isshown as a 0), providing the user with the ability to drill down tolevel five.

Level five displays all matching records for the clicked card number.

Examples of YEARLY REPORTS are shown in Figs #-#. At level one, the daterange is listed on top of the report. Click on the DRILL DOWN button formore detail on any receiver. At level two, the receiver name and daterange are at the top of the report. There is one row for each calendarmonth. Months with multiple referrals are bold. Click on any Bold Monthfor detail by date of call. At level three, the receiver name and daterange are at the top of report. There is one row for each date ofreferrals. Dates with multiple referrals are bold. Click on any BoldDates for detail by caller's account number and origination. At levelfour, there is shown each card number entered for each call and theoriginating phone number for calls made to the receiver selected inlevel 1 for the day clicked in the previous level. Receiver name anddate range are listed at the top of report. Records are sorted by timeof day from most recent. There is one entry per unique identifier, i.e.,credit card number. Multiple entries are Bold. (Click on Bold cardnumbers for more detail.) Zero is displayed if no card number wasentered. At level five, in the case of multiple calls having the samecard number, this report will show each of the calls made with thataccount number. Account number is listed at the top of the report.Originating phone number, time, date, and length of each call is listed.

Using COMPARE is a very powerful tool that permits a user to view otherreceivers being used by a referrer. Click on COMPARE next to the name ofany receiver to see statistics such as those in FIG. 9, where the userwill see its organization listed first, and all other referrers usingthat receiver will be listed (without identification) below that. Thisreport enables easily comparison against other referrers at this agency,e.g., by:

-   -   1. Call completion rates    -   2. Phone times    -   3. Share of referrals contributed    -   4. Referrals to one receiver versus another    -   5. And, this report enables benchmarked performance questions:    -   6. What percent of referrals do are contributed to this agency?    -   7. Are call lengths longer or shorter? Is this better or worse?        Does the referrer's call lengths contribute to        returns/conversions/counseling effectiveness?    -   8. Is the referrer getting the service level for the share of        referrals contributed?    -   9. Are a lot of referrers using this receiver? Why or why not?    -   10. Has the receiver started serving more or less referrers?        Why? How does this affect service levels?    -   11. How does this receiver's performance with all referrers        compare to other receivers?

Turning now to use of the CUSTOM REPORTS feature, this menu optionprovides the ability to construct a custom search of the referraldatabase. The user is greeted with a custom search area similar to theone shown in FIG. 10. This search interface allows manipulation of allof the report variables in order to refine a search to meet a user'sparticular needs. These reports will display the requested informationin a table. The user also can have the option to download these reportsin a format which can be imported to a word processor or spreadsheet(like Microsoft Word™ or Excel™).

Turning now to use of the SUMMARY REPORTS feature, this menu optionprovides System members with anonymous summary information that reachesacross all receivers and referrers. These reports produce real-timesummary calculations on all records in the current database (maximum of365 days). See FIG. 8, Level One.

Turning now to use of the TIME OF DAY/DAY OF WEEK REPORTS feature, thismenu option provides a report of frequency data on caller activity basedon a 7-day week. Data is provided for each day of the week with a drilldown link on each day to provide information on an hourly breakdown.Currently summarizes all System 1 activity; but can also summarize bylogin. See FIG. 8, Level Two, where the user may drilldown on any Boldentry by clicking on it to see referral distribution by hour of the day.

Turning now to use of the TIME OF MONTH REPORTS feature, this menuoption provides a report of frequency data on caller activity bycalendar month of the year and time of the month. Data is provided foreach month with a drill down link on bold months to a daily breakdown.Currently summarizes all Peregrin activity; later will also summarize bylogin. See FIG. 8, Level 3, where the user may drilldown on any Boldentry by clicking on it to see referral distribution by day of themonth.

Turning now to use of the STATE OF ORIGIN REPORTS feature, this menuoption provides a report of frequency data on caller activity based onthe state of origin. Data is provided for each state. Data is sorted bystate. This report does not have drill-down functionality. Currentlysummarizes all activity; but can also summarize by login. See FIG. 9,Level Four.

Turning now to use of the STATE OF ORIGIN REPORTS feature, this menuoption provides a report provides users with a summary of overall callcompletion rates across all receivers and referrers. The report alsoprovides a percentage breakout on the causes for incomplete calls.Currently summarizes all activity; but can also summarize by login. SeeFIG. 9, Level Five.

An illustration of an embodiment a report screen for analysis isprovided in FIG. 10, and a schematic view of the site reports isprovided in FIG. 11.

Not shown on the Figs. is an accounting system, such as QuickBooks™,which can operate on a computer of the intermediary, eitherindependently or in connection to the System 1 of FIG. 1 to account forcompensation for call referral, such as a flat fee for each callreferral, the fee being paid, for example, by the financial assistancecenter receiving the call referral.

Turning now to the operational standards for the website, particularlythe specifications and configurations of the web server, firewallserver, and related software and hardware, consider first a generaloverview of the SQL database used to drive the website. The websitemaintains a simple but secure multi-server design. The firewall server,which protects the network from unauthorized access, is a Windows NTServer configured with Axent Raptor Software. The web server is anotherNT Server running Internet Information Server, Cold Fusion, andMicrosoft SQL server.

When an Internet user (via computer 110) requests a page from thedomain, the request is routed via switch 112 to SkyNetWeb, the DNSauthority and ISP (Internet Service Provider). SkyNetWeb has a WebServer114 with a routing table entry which redirects all requests to theintermediary's IP address (64.23.0.20), which has been assigned to thefirst network card in the Firewall. A Raptor server redirects therequest from the firewall to the web server through a port 80connection. The web server does not have an external Internet IPaddress. The web server is connected to the Firewall server using aninternal IP address range 9192.168.XXX.XXX). The only device that isexposed to the Internet is the Firewall server 116, as illustrated inFIG. 13.

Each of the three servers, including the IVR Server 12, is configured asa member server of a workgroup.

The Firewall Server 116 can, for example, be as follows: LCG Server;Windows NT Product ID Number 26699-OEM-0044587-97975; Intel Pentium III,600 Mhz Processor (single processor); 256 MB RAM; 2×6.4 GB Hard Drivesoperating in a RAID configuration; 3×10/100 Network Cards (Intel); TopCard—Connected to WAN with blue cable; Middle Card—Connected to internalnetwork with RED cable; Bottom Card—Currently inactive; Dual-redundantpower supplies; 15 inch Optiplex monitor; CD-Drive; Floppy Drive. Andthe software can be Axent Raptor—Version 5.5; Internet Explorer;CuteFTP; Windows NT Server 4.0; Service Pack 5; Raptor Mobile VPNSoftware.

The firewall server 116 is configured to block all unauthorized Internettraffic. The minimum required ports have been left open.

Inbound traffic on port Will resolve to  80 (http) Port 80 on the webserver 443 (SSL) Port 443 on the web server Outbound traffic from Willbe routed the web server on port to the Internet from port 25 (SMTP) 25on the Firewall

The firewall server 116 can be installed with 3 Network Interface Cards(NIC) configured as follows:

Card 1: External Internet Exposure (Top Card) IP Address: 64.23.0.20Card 2: Internal Network between the Firewall and Web servers (MiddleCard) IP Address: 192.168.1.1 Card 3: Inactive card (Could be used toconfigure another domain) (Bottom Card) IP Address (10.1.1.1)

All web-based communication uses the TCP/IP protocol stack. The RaptorFirewall 116 can be configured to run as an NT service with automaticstart-up. Upon restart, all Raptor services will automatically resume.

There are two physical drives in the server. Each drive has an 8.4.GBcapacity. The drives are partitioned into three volumes (C, D, and E).All relevant data is currently being stored on the C partition. D and Eare currently empty except for a CuteFTP application directory on E.CuteFTP was used to download various applications and updates to thenetwork. It should not put network security at risk. Raptor Firewalldoes a very good job of disabling insecure NT services. The followingservices are currently running on the Firewall server.

Eventlog

Plug and Play

Raptor Firewall

Remote Procedure Call (RPC)

Spooler

TCP/IP NetBios Helper

Workstation

The WebServer 114 can, for example, be LCG Server; Windows NT Key26699-OEM-0044587-97975; 2 X Intel Pentium III, 550 Mhz Processors (dualprocessor); 512 MB RAM; 3×9.1 GB SCSI Hard Drives operating in a RAID 5configuration; 2×10/100 Network Cards (Intel); Dual-redundant powersupplies; 15 inch Optiplex monitor (model no—VCDTS21487-3M); CD-Drive;and a Floppy Drive. Similarly, the software can be Windows NT Server4.0, Service Pack 5; Internet Information Server 4; Cold FusionProfessional Server, Version 4.5; Microsoft SQL Server 7 (DualProcessor, Unlimited Internet Connector Licenses); Web Trends LogAnalyzer; Internet Explorer; and PC Anywhere Version 9.

The WebServer 114 can be configured to accept Internet requests, processresults, and pass formatted result pages back to the Internet. Theserver 116 completes this task by using Internet Information Server asthe core web server application, Microsoft SQL server 7 as the databaseengine, and Allaire Cold Fusion 4.5 as the middle-ware application totranslate database content into properly formatted web pages.

When a client calls the 800 number in search of a CCA, the details ofthe phone call are recorded in the IVR database 20. Preferably in realtime, but also doable is every 1-3 minutes, the IVR database pushes newcall records to a Microsoft SQL 7 database on the WebServer 114. CCA andCreditor members then query the call record database to retrieverelevant information. Cold Fusion Application Server formats thisinformation into HTML.

The WebServer 114 has two network cards that allow the server 114 toroute data requests between the Web/Firewall network and the Web/IVRnetwork. The network cards can be configured as follows:

Card 1: Web/Firewall Card IP Address: 192.168.1.2 Card 2: Web/IVR CardIP Address: 192.168.2.1

Microsoft IIS, Cold Fusion Server, SQL Server, PC Anywhere, andWebTrends have been configured to run as NT services with automaticstart-up. Upon restart, all above-mentioned services will automaticallyresume.

The WebServer 114 has been installed with 3×9.1 GB hard drives operatingin a RAID 5 array. This configuration serves as a first line of defenseagainst system failure. All data is being maintained on three harddisks.

All data on the web server RAID array (drive G) is being backed up totape each night.

There are 5 physical drives located in the server 114. The first two IDEdrives are 4 GB in size. These drives are being used as boot drives.They are divided into two, GB partitions (C and D). An NT based RAIDmirror has been established between the drives to insure reliability.The IDE boot drives are not being backed up to tape.

The remaining three drives, 9.1 GB SCSI configured in a RAID 5 arraywith an Adaptec 64 MB RAID adapter card, work together to create the Gpartition. This partition contains all data, cold fusion applicationfiles, and html files. Most program directories are also stored in thisdirectory. This entire directory is being backed up to tape each night.Pangia technologies is managing the backup process. There are currentlyover 16 GB of free space on the G drive, and the following NT servicescan be running.

Alerter

Certificate Authority

Cold Fusion Application Server

Cold Fusion Executive

Cold Fusion RDS

Computer Browser

Content Index

Event

FTP Publishing Service (Port turned off by Firewall)

IIS Admin Service

License Logging Service

Message

Microsoft SMTP Service

MSDTC

MS SQLServer

NT LM Security Support Provider

PC Anywhere Host Service

Plug and Play

Protected Storage

Remote Procedure Call Service

Server

Spooler

SQL ServerAgent

TCP/IP NetBios Helper

Web Trends Scheduler

Workstation

World Wide Web Publishing Service

As to the switch 112 is used to connect the Firewall server 116 to theWebServer 114. The IVR server is connected to the web server with a hub118.

Switch NetGear Fast Ethernet Switch Model Number DS105 Hub NetGear10/100 Autosensing Model Number DS104

Each of the servers and related equipment can be protected from powerinconsistencies and outages by UPS systems. The WebServer 114 isconnected to a stand-alone SmartUPS 700 made by APC: Model Number:SU700NET. The firewall server 116 is connected to a stand-alone SmartUPS700 made by APC: Model Number: SU700NET.

With regard to the Appendix, incorporated here by reference, considerthe following logic design dictionary.

Entity Summary Report Entity Name Entity Type Primary Keys # Attr BankIndependent BankId CCA Independent CCAId CDATA Independent CGLOBALIndependent IVR_Table Independent call_record_index Member IndependentMemberId role Independent RoleID State Independent StateCd TestANIIndependent TestANITx Tmplt Independent TmpltId TmpltText IndependentTmpltTextId userrole Independent UserRoleID users Independent UserIdBank

-   Entity Name Bank-   Primary Keys BankId-   Definition The Bank table contains all information specific to a    bank/referrer. There are two types of “bank” entries to be found    here. These have been designated as a “main office”, or a “branch”.    If a user is assigned to a main office they may also be given access    to see all subordinate “branch” office data.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionBankId/ INTEGER ID auto-generated number to used as the primary key ofthe table. BankParentId/ INTEGER Y The BankId of the parent (mainoffice) bank entry in this table. DNIS/ VARCHAR(12) N The DNIS (800number) a customer uses to contact the bank. This field relates to theDNIS field in the IVR_Table. BankNameTx/ VARCHAR(50) N The name of thebank. BankAddrss1Tx/ VARCHAR(50) Y The address (line 1) of the bank.BankAddrss2Tx/ VARCHAR(50) Y The address (line 2) of the bankBankCityTx/ VARCHAR(50) Y The city in which the bank is located.StateCd/ VARCHAR(2) Y The state in which the bank is StateCd located.BankZipTx/ VARCHAR(12) Y The zip code in which the bank is locatedBankPhoneTx/ VARCHAR(12) Y The phone number of the bank. Possibly acontact number for someone at the bank. BankFaxPhoneTx/ VARCHAR(12) YThe fax number for the bank. BankWebSiteURLTx/ VARCHAR(50) Y The URL ofthe banks website (if any) BankInuseIn/ BIT N Indicates if the bank is“inuse” in the site. This field is used to “turn off” banks withouthaving to delete them from the system. BankDptTx/ VARCHAR(20) Y Thedepartment of the bank branch. The department indicates the level oflate accounts the particular bank branch deals with. The departmentdesignations are: 30 day, 60 day, 90 day, 120 day, Charge Off.BankParentIn/ BIT N Indicates if the bank is a “main office” entry.BankCreateDt/ DATETIME Y Date record was created. BankModifyDt/ DATETIMEY Date Record was last updated. This is set via an updatea tabletrigger. BankChangeTx VARCHAR(75) Y The user id of the person to lastcreate or modify the record. The SQL Server login is used as the default(via an update table trigger) if no application specific id was given.

BankId Attribute Name BankId Entity Name Bank Primary Key YES ForeignKey NO Parent Entity

Definition

-   auto-generated number to used as the primary key of the table.

BankParentId Attribute Name BankParentId Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   The BankId of the parent (main office) bank entry in this table.

DNIS Attribute Name DNIS Entity Name Bank Primary Key NO Foreign Key NOParent Entity

Definition

-   The DNIS (800 number) a customer uses to contact the bank. This    field relates to the DNIS field in the IVR_Table.

BankNameTx Attribute Name BankNameTx Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   The name of the bank.

BankAddrss1Tx Attribute Name BankAddrss1Tx Entity Name Bank Primary KeyNO Foreign Key NO Parent Entity

Definition

-   The address (line 1) of the bank.

BankAddrss2Tx Attribute Name BankAddrss2Tx Entity Name Bank Primary KeyNO Foreign Key NO Parent Entity

Definition

-   The address (line 2) of the bank

BankCityTx Attribute Name BankCityTx Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   The city in which the bank is located.

StateCd Attribute Name StateCd Entity Name Bank Primary Key NO ForeignKey YES Parent Entity State

Definition

-   The state in which the bank is located.

BankZipTx Attribute Name BankZipTx Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   The zip code in which the bank is located

BankPhoneTx Attribute Name BankPhoneTx Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   The phone number of the bank. Possibly a contact number for someone    at the bank.

BankFaxPhoneTx Attribute Name BankFaxPhoneTx Entity Name Bank PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   The fax number for the bank.

BankWebSiteURLTx Attribute Name BankWebSiteURLTx Entity Name BankPrimary Key NO Foreign Key NO Parent Entity

Definition

-   The URL of the banks website (if any)

BankInuseIn Attribute Name BankInuseIn Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   Indicates if the bank is “inuse” in the site. This field is used to    “turn off” banks without having to delete them from the system.

BankDptTx Attribute Name BankDptTx Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   The department of the bank branch. The department indicates the    level of late accounts the particular bank branch deals with. The    department designations are: 30 day, 60 day, 90 day, 120 day, Charge    Off.

BankParentIn Attribute Name BankParentIn Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   Indicates if the bank is a “main office” entry.

BankCreateDt Attribute Name BankCreateDt Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   Date record was created.

BankModifyDt Attribute Name BankModifyDt Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   Date Record was last updated. This is set via an updatea table    trigger.

BankChangeTx Attribute Name BankChangeTx Entity Name Bank Primary Key NOForeign Key NO Parent Entity

Definition

-   The user id of the person to last create or modify the record. The    SQL Server login is used as the default (via an update table    trigger) if no application specific id was given.-   CCA-   Entity Name CCA-   Primary Keys CCAId

Definition The CCA table contains all information specific toCCA's/Receiver's.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionCCAId/ INTEGER ID auto-generated number used as the primary key of thetable. CCANameTx/ VARCHAR(50) Y Name of the CCA/Receiver. CCAAddrss1Tx/VARCHAR(50) Y First address line of the CCA CCAAddrss2Tx/ VARCHAR(50) YSecond address line of the CCA. CCACityTx/ VARCHAR(50) Y City in whichthe CCA is located. StateCd/ VARCHAR(2) Y State in which the CCA isStateCd located. CCAZipTx/ VARCHAR(12) Y The zip code in which the CCAis located. CCAPhoneTx/ VARCHAR(12) Y A phone number for the CCA,possibly a specific contact within the company. CCAFaxPhoneTx/VARCHAR(12) Y The fax number for the CCA CCAWebSiteURLTx/ VARCHAR(80) YThe URL of the CCA's web site (if any) CCABillCntctId/ VARCHAR(12) Y****Unknown****, this field was included in the table layout providedbut not currently in use. CCAIVRPhoneTx/ VARCHAR(12) Y The phone numberused by IVR routing system to connect customers with the CCA. This fielddirectly ties back to the outbound_number fields (0, 1, 2) in theIVR_Table. CCAInuseIn/ BIT N Indicates if the CCA is “inuse” in thesystem. This field is used to “turn off” a CCA without removing therecord from the database. CCATypeTx/ VARCHAR(20) Y The type/level ofservice provided by the CCA. Current valid values are: Walk In, PhoneOnly, Both. CCAAffltn/ VARCHAR(10) Y The affiliation membeship of theCCA. Current valid values are: AICCCA, NFCC, None. CCACreateDt/ DATETIMEY Date the record was created. CCAModifyDt/ DATETIME Y Date the recordwas last modified. (set via an update table trigger) CCAChangeTx/VARCHAR(75) Y User id that last created or modified the record. Bydefault the SQL Server login is used if no application specific user idwas given.

CCAId Attribute Name CCAId Entity Name CCA Primary Key YES Foreign KeyNO Parent Entity

Definition

-   auto-generated number used as the primary key of the table.

CCANameTx Attribute Name CCANameTx Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   Name of the CCA/Receiver.

CCAAddrss1Tx Attribute Name CCAAddrss1Tx Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   First address line of the CCA

CCAAddrss2Tx Attribute Name CCAAddrss2Tx Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   Second address line of the CCA.

CCACityTx Attribute Name CCACityTx Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   City in which the CCA is located.

StateCd Attribute Name StateCd Entity Name CCA Primary Key NO ForeignKey YES Parent Entity State

Definition

-   State in which the CCA is located.

CCAZipTx Attribute Name CCAZipTx Entity Name CCA Primary Key NO ForeignKey NO Parent Entity

Definition

-   The zip code in which the CCA is located.

CCAPhoneTx Attribute Name CCAPhoneTx Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   A phone number for the CCA, possibly a specific contact within the    company.

CCAFaxPhoneTx Attribute Name CCAFaxPhoneTx Entity Name CCA Primary KeyNO Foreign Key NO Parent Entity

Definition

-   The fax number for the CCA

CCAWebSiteURLTx Attribute Name CCAWebSiteURLTx Entity Name CCA PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   The URL of the CCA's web site (if any)

CCABillCntctId Attribute Name CCABillCntctId Entity Name CCA Primary KeyNO Foreign Key NO Parent Entity

Definition

-   ****Unknown****, this field was included in the table layout    provided but not currently in use.

CCAIVRPhoneTx Attribute Name CCAIVRPhoneTx Entity Name CCA Primary KeyNO Foreign Key NO Parent Entity

Definition

-   The phone number used by IVR routing system to connect customers    with the CCA. This field directly ties back to the outbound_number    fields (0,1,2) in the IVR_Table.

CCAInuseIn Attribute Name CCAInuseIn Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   Indicates if the CCA is “inuse” in the system. This field is used to    “turn off” a CCA without removing the record from the database.

CCATypeTx Attribute Name CCATypeTx Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   The type/level of service provided by the CCA. Current valid values    are: Walk In, Phone Only, Both.

CCAAffltn Attribute Name CCAAffltn Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   The affiliation membership of the CCA. Current valid values are:    AICCCA, NFCC, None.

CCACreateDt Attribute Name CCACreateDt Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   Date the record was created.

CCAModifyDt Attribute Name CCAModifyDt Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   Date the record was last modified. (set via an update table trigger)

CCAChangeTx Attribute Name CCAChangeTx Entity Name CCA Primary Key NOForeign Key NO Parent Entity

Definition

-   User id that last created or modified the record. By default the SQL    Server login is used if no application specific user id was given.    CDATA-   Entity Name CDATA-   Primary Keys

Definition Internal Coldfusion table used to track users and associatedsystem variables.

Notes Attributes Attribute/Role Name Domain Datatype Null Definitioncfid/ CHAR(20) Y app/ CHAR(64) Y data/ LONG VARCHAR Y

cfid Attribute Name cfid Entity Name CDATA Primary Key NO Foreign Key NOParent Entity

Definition

app Attribute Name app Entity Name CDATA Primary Key NO Foreign Key NOParent Entity

Definition

data Attribute Name data Entity Name CDATA Primary Key NO Foreign Key NOParent Entity

Definition

CGLOBAL

-   Entity Name CGLOBAL-   Primary Keys

Definition Internal Coldfusion table used to track users and associatedsystem variables.

Notes Attributes Attribute/Role Name Domain Datatype Null Definitioncfid/ CHAR(20) Y data/ LONG VARCHAR Y lvisit/ DATETIME Y

cfid Attribute Name cfid Entity Name CGLOBAL Primary Key NO Foreign KeyNO Parent Entity

Definition

data Attribute Name data Entity Name CGLOBAL Primary Key NO Foreign KeyNO Parent Entity

Definition

lvisit Attribute Name lvisit Entity Name CGLOBAL Primary Key NO ForeignKey NO Parent Entity

Definition

IVR_Table

-   Entity Name IVR_Table-   Primary Keys call_record_index

Definition The IVR_table contains transaction records from the IVRsystem. It is used as the core table for all reporting done in the website. This table is “replicated” from the IVR system and is essentially“read only” in our site.

Notes Attributes Attribute/Role Name Domain Datatype Null Definitioncall_record_index/ NUMERIC(18, 0) ID Automatically increments by one -used to uniquely identify each call into the IVR system. ani/VARCHAR(12) Y this represents the ani digits we received.ani_info_areacode/ INTEGER Y this is the area code part of the receivedani ani_info_phone_number/ VARCHAR(12) Y this is the number part of thereceived ani StateCd/StateCd VARCHAR(2) Y this is the state identifierwhich was determined by the IVR system (always has a value)call_completed_flag/ INTEGER Y = call was completed 0 = call was notcompleted credit_card_number/ VARCHAR(26) Y this represents the digitsentered for the credit card number. dnis/ VARCHAR(12) Y this representsthe DNIS digits that were received. dnis_valid/ INTEGER Y Y = receivedDNIS was found by our routing models N = received DNIS was not found byour routing models start_datetime/ DATETIME Y Date and Time call wasanswered by the IVR System (always has a value) end_datetime/ DATETIME YDate and Time call was ended (always has a value) call_duration/ INTEGERY Number of seconds representing the duration of the call (always has avalue) exception_code0/ INTEGER Y Exception code for first CCA numberdialed exception codes: 0 = No problems or never attempted to dialnumber 27 = No Dial Tone 28 = Fast Busy 29 = Busy 30 = No Answer 31 = NoRing 36 = Unknown (tbd) exception_code1/ INTEGER Y Exception code forsecond CCA number dialed exception codes: 0 = No problems or neverattempted to dial number 27 = No Dial Tone 28 = Fast Busy 29 = Busy 30 =No Answer 31 = No Ring 36 = Unknown (tbd) exception_code2/ INTEGER YException code for third CCA number dialed exception codes: 0 = Noproblems or never attempted to dial number 27 = No Dial Tone 28 = FastBusy 29 = Busy 30 = No Answer 31 = No Ring 36 = Unknown (tbd)first_time_caller_flag/ INTEGER Y = this is a repeat caller 1 = this isa first time caller 2 = caller hung up phone before digits entered couldbe validated outbound_number0/ VARCHAR(50) Y First CCA Number to try (0indicates caller hung up before we had a chance to lookup the CCAnumbers in the routing tables) outbound_number1/ VARCHAR(12) Y SecondCCA Number to try (this is 0 for a repeat caller, this is also 0 whenthe first CCA number is 0) outbound_number2/ VARCHAR(12) Y Third CCANumber to try (this is 0 for a repeat caller, this is 0 when the defaultrouting model is the only model accessed, this is 0 when the first CCAnumber is 0) final_called_number/ VARCHAR(12) Y the CCA number which wassuccessfully connected too is stored here web_upload/ INTEGER Y web sidedoesn't need to worry about this column (note from the web side: this isan internal indicator field for the ivr replication mechanism todetermine if the system of origin hasa replicated the data to the webreporting database) hold_datetime/ DATETIME Y Date and Time of whencaller was put on HOLD, blank if call was terminated before caller wasput on hold. connect_datetime/ DATETIME Y Date and Time of when callerwas connected to CCA, blank if call was terminated before caller wasconnected.

call_record_index Attribute Name call_record_index Entity Name IVR_TablePrimary Key YES Foreign Key NO Parent Entity

Definition

-   Automatically increments by one—used to uniquely identify each call    into the IVR system.

ani Attribute Name ani Entity Name IVR_Table Primary Key NO Foreign KeyNO Parent Entity

Definition

-   this represents the ani digits we received.

ani_info_areacode Attribute Name ani_info_areacode Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   this is the area code part of the received ani

ani_info_phone_number Attribute Name ani_info_phone_number Entity NameIVR_Table Primary Key NO Foreign Key NO Parent Entity

Definition

-   this is the number part of the received ani

StateCd Attribute Name StateCd Entity Name IVR_Table Primary Key NOForeign Key YES Parent Entity State

Definition

-   this is the state identifier which was determined by the IVR system    (always has a value)

call_completed_flag Attribute Name call_completed_flag Entity NameIVR_Table Primary Key NO Foreign Key NO Parent Entity

Definition

-   =call was completed 0=call was not completed

credit_card_number Attribute Name credit_card_number Entity NameIVR_Table Primary Key NO Foreign Key NO Parent Entity

Definition

-   this represents the digits entered for the credit card number.

dnis Attribute Name dnis Entity Name IVR_Table Primary Key NO ForeignKey NO Parent Entity

Definition

-   this represents the DNIS digits that were received.

dnis_valid Attribute Name dnis_valid Entity Name IVR_Table Primary KeyNO Foreign Key NO Parent Entity

Definition

-   Y=received DNIS was found by our routing models N=received DNIS was    not found by our routing models

start_datetime Attribute Name start_datetime Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   Date and Time call was answered by the IVR System (always has a    value)

end_datetime Attribute Name end_datetime Entity Name IVR_Table PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   Date and Time call was ended (always has a value)

call_duration Attribute Name call_duration Entity Name IVR_Table PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   Number of seconds representing the duration of the call (always has    a value)

exception_code0 Attribute Name exception_code0 Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   Exception code for first CCA number dialed exception codes: 0=No    problems or never attempted to dial number 27=No Dial Tone 28=Fast    Busy 29=Busy 30=No Answer 31=No Ring 36=Unknown (tbd)

exception_code1 Attribute Name exception_code1 Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   Exception code for second CCA number dialed exception codes: 0=No    problems or never attempted to dial number 27=No Dial Tone 28=Fast    Busy 29=Busy 30=No Answer 31=No Ring 36=Unknown (tbd)

exception_code2 Attribute Name exception_code2 Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   Exception code for third CCA number dialed exception codes: 0=No    problems or never attempted to dial number 27=No Dial Tone 28=Fast    Busy 29=Busy 30=No Answer 31=No Ring 36=Unknown (tbd)

first_time_caller_flag Attribute Name first_time_caller_flag Entity NameIVR_Table Primary Key NO Foreign Key NO Parent Entity

Definition

-   =this is a repeat caller 1=this is a first time caller 2=caller hung    up phone before digits entered could be validated

outbound_number0 Attribute Name outbound_number0 Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   First CCA Number to try (0 indicates caller hung up before we had a    chance to lookup the CCA numbers in the routing tables)

outbound_number1 Attribute Name outbound_number1 Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   Second CCA Number to try (this is 0 for a repeat caller, this is    also 0 when the first CCA number is 0)

outbound_number2 Attribute Name outbound_number2 Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   Third CCA Number to try (this is 0 for a repeat caller, this is 0    when the default routing model is the only model accessed, this is 0    when the first CCA number is 0)

final_called_number Attribute Name final_called_number Entity NameIVR_Table Primary Key NO Foreign Key NO Parent Entity

Definition

-   the CCA number which was successfully connected too is stored here

web_upload Attribute Name web_upload Entity Name IVR_Table Primary KeyNO Foreign Key NO Parent Entity

Definition

-   web side doesn't need to worry about this column (note from the web    side: this is an internal indicator field for the ivr replication    mechanism to determine if the system of origin has a replicated the    data to the web reporting database)

hold_datetime Attribute Name hold_datetime Entity Name IVR_Table PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   Date and Time of when caller was put on HOLD, blank if call was    terminated before caller was put on hold.

connect_datetime Attribute Name connect_datetime Entity Name IVR_TablePrimary Key NO Foreign Key NO Parent Entity

Definition

-   Date and Time of when caller was connected to CCA, blank if call was    terminated before caller was connected.    Member-   Entity Name Member-   Primary Keys MemberId

Definition The Member table will hold all information specific to a userthat requires access to the Members area of the site.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionMemberId/ INTEGER ID A auto-generated id to be used as the primary keyof the table. CCAId/CCAId INTEGER Y UserId/UserId INTEGER YAuto-generated id to be used as the primary key of the table.BankId/BankId INTEGER Y MemberFirstNameTx/ VARCHAR(50) Y The first nameof the user. MemberLastNameTx/ VARCHAR(50) Y The last name of the userMemberPhoneTx/ VARCHAR(12) Y The phone number of the userMemberFaxPhoneTx/ VARCHAR(50) Y The fax number of the userMemberEmailAddrssTx/ VARCHAR(50) Y The email address of the userMemberInuseIn/ BIT N Indicates if the member is currently “active” inthe site. This is field is used to turn off access to a user withoutactually deleting there record from the database. 0 = turned off, 1 =turned on. MemberTitleTx/ VARCHAR(25) Y The title, if any, of the user.I.E. Vice President, or VP accounting dpt. MemberCreateDt/ DATETIME YDate the record was created. MemberModifyDt/ DATETIME Y Date record waslast modified. This is set via an update table trigger. MemberChangeTx/VARCHAR(75) Y User Id that last created or updated the record. Thiscould be set as either an application specific userid during an SQlupdate statement or a SQL Server login id via an update table trigger asthe default.

MemberId Attribute Name MemberId Entity Name Member Primary Key YESForeign Key NO Parent Entity

Definition

-   A auto-generated id to be used as the primary key of the table.

CCAId Attribute Name CCAId Entity Name Member Primary Key NO Foreign KeyYES Parent Entity CCA

Definition

UserId Attribute Name UserId Entity Name Member Primary Key NO ForeignKey YES Parent Entity users

Definition

-   Auto-generated id to be used as the primary key of the table.

BankId Attribute Name BankId Entity Name Member Primary Key NO ForeignKey YES Parent Entity Bank

Definition

MemberFirstNameTx Attribute Name MemberFirstNameTx Entity Name MemberPrimary Key NO Foreign Key NO Parent Entity

Definition

-   The first name of the user.

MemberLastNameTx Attribute Name MemberLastNameTx Entity Name MemberPrimary Key NO Foreign Key NO Parent Entity

Definition

-   The last name of the user

MemberPhoneTx Attribute Name MemberPhoneTx Entity Name Member PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   The phone number of the user

MemberFaxPhoneTx Attribute Name MemberFaxPhoneTx Entity Name MemberPrimary Key NO Foreign Key NO Parent Entity

Definition

-   The fax number of the user

MemberEmailAddrssTx Attribute Name MemberEmailAddrssTx Entity NameMember Primary Key NO Foreign Key NO Parent Entity

Definition

-   The email address of the user

MemberInuseIn Attribute Name MemberInuseIn Entity Name Member PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   Indicates if the member is currently “active” in the site. This is    field is used to turn off access to a user without actually deleting    there record from the database. 0=turned off, 1=turned on.

MemberTitleTx Attribute Name MemberTitleTx Entity Name Member PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   The title, if any, of the user. I.E. Vice President, or VP    accounting dpt.

MemberCreateDt Attribute Name MemberCreateDt Entity Name Member PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   Date the record was created.

MemberModifyDt Attribute Name MemberModifyDt Entity Name Member PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   Date record was last modified. This is set via an update table    trigger.

MemberChangeTx Attribute Name MemberChangeTx Entity Name Member PrimaryKey NO Foreign Key NO Parent Entity

Definition

-   User Id that last created or updated the record. This could be set    as either an application specific userid during an SQI update    statement or a SQL Server login id via an update table trigger as    the default.    role-   Entity Name role-   Primary Keys RoleID

Definition The role table contains the distinct types of access definedin the site. I.E. Bank's, CCA's, SuperAdmin, SiteAdmin etc.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionRoleID/ INTEGER ID Auto-generated number used as the primary key of thetable. RoleNameTX/ VARCHAR(150) Y Name for the access type (role). I.E.Bank, CCA, Admin RoleDescTX/ LONG VARCHAR Y A description of the purposeand/or access level the role confers to the user. RoleCreateDT/ DATETIMEY Date the role was created RoleModifyDT/ DATETIME Y Date the role wasupdated. RoleChangeTX/ VARCHAR(75) Y User login id (or sql login) of theaccount used to create or last update the role.

RoleId Attribute Name RoleID Entity Name role Primary Key YES ForeignKey NO Parent Entity

Definition

-   Auto-generated number used as the primary key of the table.

RoleNameTX Attribute Name RoleNameTX Entity Name role Primary Key NOForeign Key NO Parent Entity

Definition

-   Name for the access type (role). I.E. Bank, CCA, Admin

RoleDescTX Attribute Name RoleDescTX Entity Name role Primary Key NOForeign Key NO Parent Entity

Definition

-   A description of the purpose and/or access level the role confers to    the user.

RoleCreateDT Attribute Name RoleCreateDT Entity Name role Primary Key NOForeign Key NO Parent Entity

Definition

-   Date the role was created

RoleModifyDT Attribute Name RoleModifyDT Entity Name role Primary Key NOForeign Key NO Parent Entity

Definition

-   Date the role was updated.

RoleChangeTX Attribute Name RoleChangeTX Entity Name role Primary Key NOForeign Key NO Parent Entity

Definition

-   User login id (or sql login) of the account used to create or last    update the role.    State-   Entity Name State-   Primary Keys StateCd

Definition The State table contains the full state name associated withthe standard 2 digit state code abbreviation.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionStateCd/ VARCHAR(2) N The 2 digit state abbreviation. StateNameTX/VARCHAR(50) N The full name of the state.

StateCd Attribute Name StateCd Entity Name State Primary Key YES ForeignKey NO Parent Entity

Definition

-   The 2 digit state abbreviation.

StateNameTX Attribute Name StateNameTX Entity Name State Primary Key NOForeign Key NO Parent Entity

Definition

-   The full name of the state.-   TestANI-   Entity Name TestANI-   Primary Keys TestANITx

Definition This table contains a list of Test ANI's. The entries in thistable are to be excluded from the standard web summary reports.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionTestANITx/ VARCHAR(12) N An ANI (Phone#).

TestANITx Attribute Name TestANITx Entity Name TestANI Primary Key YESForeign Key NO Parent Entity

Definition

-   An ANI (Phone#).    TmpIt-   Entity Name TmpIt-   Primary Keys TmpItId

Definition The TmpIt table contains the names of all dynamic Coldfusiontemplates on the site.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionTmpltId/ INTEGER ID Auto-generated number used as the primary key of thetable. TmpltNameTx/ VARCHAR(50) N the actual coldfusion template name.I.E. Index.cfm TmpltDescTx/ LONG VARCHAR Y A description of thetemplate. Used to help administrator recognize which template is which.TmpltInuseIn/ BIT N Indicates if the template is “inuse”.

TmpltId Attribute Name TmpItId Entity Name TmpIt Primary Key YES ForeignKey NO Parent Entity

Definition

-   Auto-generated number used as the primary key of the table.

TmpltNameTx Attribute Name TmpltNameTx Entity Name Tmplt Primary Key NOForeign Key NO Parent Entity

Definition

-   the actual coldfusion template name. I.E. Index.cfm

TmpltDescTx Attribute Name TmpltDescTx Entity Name Tmplt Primary Key NOForeign Key NO Parent Entity

Definition

-   A description of the template. Used to help administrator recognize    which template is which.

TmpltInuseIn Attribute Name TmpltInuseIn Entity Name Tmplt Primary KeyNO Foreign Key NO Parent Entity

Definition

-   Indicates if the tmeplate is “inuse”.    TmpItText-   Entity Name TmpItText-   Primary Keys TmpItTextId

Definition The TmpItText table contains all the “changeable” text partsof a Coldfusion template. There may be many text parts for a singletemplate.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionTmpltTextId/ INTEGER ID auto-generated number used as the primary key ofthe table. TmpltId/TmpltId INTEGER N foreign key to the Tmplt table.Identifies the template the text is to be displayed on. TmpltTextCd/VARCHAR(20) N A code which identifies the individual text parts. Thiscode will be used inside the cold- fusion template to place text on thepage. TmpltTextDescTx/ VARCHAR(500) Y A description of the text piece toaid administrator in identifying where the text is to be displayed. I.E.“The text blurb at the bottom of the page”

TmpltTextId Attribute Name TmpltTextId Entity Name TmpltText Primary KeyYES Foreign Key NO Parent Entity

Definition

-   auto-generated number used as the primary key of the table.

TmpltId Attribute Name TmpltId Entity Name TmpltText Primary Key NOForeign Key YES Parent Entity Tmplt

Definition

-   foerign key to the TmpIt table. Identifies the template the text is    to be displayed on.

TmpltTextCd Attribute Name TmpltTextCd Entity Name TmpltText Primary KeyNO Foreign Key NO Parent Entity

Definition

-   A code which identifies the individual text parts. This code will be    used inside the coldfusion template to place text on the page.

TmpltTextDescTx Attribute Name TmpltTextDescTx Entity Name TmpltTextPrimary Key NO Foreign Key NO Parent Entity

Definition

-   A description of the text piece to aid administrator in identifying    where the text is to be displayed. I.E. “The text blurb at the    bottom of the page”    userrole-   Entity Name userrole-   Primary Keys UserRoleID

Definition The UserRole table is a cross reference between the Users andRole tables. It is where which roles a particular user has be given isassigned.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionUserRoleID/ INTEGER ID Auto-generated number used as the primary key ofthe table. UserId/UserId INTEGER N RoleID/RoleID INTEGER N

UserRoleID Attribute Name UserRoleID Entity Name userrole Primary KeyYES Foreign Key NO Parent Entity

Definition

-   Auto-generated number used as the primary key of the table.

UserId Attribute Name UserId Entity Name userrole Primary Key NO ForeignKey YES Parent Entity users

Definition

RoleID Attribute Name RoleID Entity Name userrole Primary Key NO ForeignKey YES Parent Entity role

Definition

users

-   Entity Name users-   Primary Keys UserId

Definition The Users table contains the user login information for amember.

Notes Attributes Attribute/Role Name Domain Datatype Null DefinitionUserId/ INTEGER ID Auto-generated id to be used as the primary key ofthe table. UserNameTX/ VARCHAR(75) Y The account login id that is uniqueto the site. I.E. member Eddie George might create login id EGeorge.UserPsswdTX/ VARCHAR(16) Y User specified password for the account.UserInuseIN/ BIT N Indicates if the user account in “inuse”. This fieldis used to turn off user accounts without actually deleting the recordfrom the database. UserCreateDT/ DATETIME Y Date the account wascreateed. UserModifyDT/ DATETIME Y Date the account was updated.UserChangeTX/ VARCHAR(75) Y The login id (or sql login) of the personwho created or last updated the record.

UserId Attribute Name UserId Entity Name users Primary Key YES ForeignKey NO Parent Entity

Definition

-   Auto-generated id to be used as the primary key of the table.

UserNameTX Attribute Name UserNameTX Entity Name users Primary Key NOForeign Key NO Parent Entity

Definition

-   The account login id that is unique to the site. I.E. member Eddie    George might create login id EGeorge.

UserPsswdTX Attribute Name UserPsswdTX Entity Name users Primary Key NOForeign Key NO Parent Entity

Definition

-   User specified password for the account.

UserInuseIN Attribute Name UserInuseIN Entity Name users Primary Key NOForeign Key NO Parent Entity

Definition

-   Indicates if the user account in “inuse”. This field is used to turn    off user accounts without actually deleting the record from the    database.

UserCreateDT Attribute Name UserCreateDT Entity Name users Primary KeyNO Foreign Key NO Parent Entity

Definition

-   Date the account was createed.

UserModifyDT Attribute Name UserModifyDT Entity Name users Primary KeyNO Foreign Key NO Parent Entity

Definition

-   Date the account was updated.

UserChangeTX Attribute Name UserChangeTX Entity Name users Primary KeyNO Foreign Key NO Parent Entity

Definition

-   The login id (or sql login) of the person who created or last    updated the record.

While the above description contains many specificity's, these shouldnot be construed as limitations on the scope of the invention, butrather as an exemplification of one preferred embodiment thereof. Manyother variations are possible such as, but not limited to, thosedescribed in the Objects and Advantages section above. Thus, the scopeof the invention should be determined by the appended claims and theirlegal equivalents, rather than by the principal embodiment and otherexamples described above.

1. A method of using an apparatus in analyzing a credit counselingagency, the method including: automatically capturing, with a computersystem, respective call data for each of a plurality of telephone callswith a credit counseling agency, each said call with a respective debtorassociated by the computer system with a respective creditor; andprocessing, with the computer system, the automatically capturedrespective call data to produce a report which analyzes the creditcounseling agency.
 2. The method of claim 1, wherein the report includescall referral information.
 3. The method of claim 1, wherein the reportincludes call referral activity by state of call origin.
 4. The methodof claim 2, wherein the call data includes an area code.
 5. The methodof claim 2, wherein the call data includes a referrer identity.
 6. Themethod of claim 1, wherein the respective creditor is a bank.
 7. Themethod of claim 5, wherein the respective creditor is a bank.
 8. Themethod of claim 1, wherein the report includes comparative informationon referrers from which the telephone calls are received.
 9. The methodof claim 8, wherein the telephone calls include telephone calls receivedon a toll-free telephone number.
 10. The method of claim 2, wherein thecall referral information includes call referral activity which isreported at an Internet address.
 11. The method of claim 1, wherein thereport includes a comparison of credit-counseling agencies.
 12. Themethod of claim 2, wherein the report includes a comparison ofcredit-counseling agencies.
 13. The method of claim 6, wherein thereport includes a comparison of credit-counseling agencies.
 14. Themethod of claim 1, wherein the report includes charge card numbers. 15.The method of claim 2, wherein the report includes charge card numbers.16. The method of claim 5, wherein the report includes charge cardnumbers.
 17. The method of claim 6, wherein the report includes chargecard numbers.
 18. The method of claim 7, wherein the report includescharge card numbers.
 19. The method of claim 8, wherein the reportincludes charge card numbers.
 20. The method of claim 13, wherein thereport includes charge card numbers.